HEX
Server: Apache/2.4.68 (Debian)
System: Linux as-cs-widget-demo-us-central1 6.1.0-44-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.164-1 (2026-03-09) x86_64
User: root (0)
PHP: 8.2.32
Disabled: NONE
Upload Files
File: /var/www/html/wp-content/plugins/wordpress-seo/src/plans/domain/add-ons/add-on-interface.php
<?php

// phpcs:disable Yoast.NamingConventions.NamespaceName.TooLong -- Needed in the folder structure.
namespace Yoast\WP\SEO\Plans\Domain\Add_Ons;

/**
 * This interface describes an add-on for a plan.
 */
interface Add_On_Interface {

	/**
	 * Returns the ID.
	 *
	 * @return string
	 */
	public function get_id(): string;

	/**
	 * Returns whether the add-on is installed and activated.
	 *
	 * @return bool
	 */
	public function is_active(): bool;

	/**
	 * Returns whether the add-on has an valid license.
	 *
	 * @return bool
	 */
	public function has_license(): bool;

	/**
	 * Returns the click-to-buy action.
	 *
	 * @return string
	 */
	public function get_ctb_action(): string;

	/**
	 * Returns the click-to-buy ID.
	 *
	 * @return string
	 */
	public function get_ctb_id(): string;
}